\hypertarget{class_shader_object}{
\section{ShaderObject Class Reference}
\label{class_shader_object}\index{ShaderObject@{ShaderObject}}
}


a base object used to store shader info from the config file  




{\ttfamily \#include $<$ShaderObject.h$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_shader_object_a3e169d2fb55eef8b5eb7129146de24aa}{ShaderObject} (const std::string \_\-shaderName, const std::string \_\-vertexFile, const std::string \_\-fragementFile, const std::vector$<$ std::string $>$ \_\-attributes, const std::vector$<$ int $>$ \_\-attributeValues, const bool \_\-isSpecial)
\begin{DoxyCompactList}\small\item\em ctor \end{DoxyCompactList}\item 
std::string \hyperlink{class_shader_object_a6c5334423581d4ee8f447365cffa0bc4}{getShaderName} () const 
\begin{DoxyCompactList}\small\item\em returns the name of the shader \end{DoxyCompactList}\item 
std::string \hyperlink{class_shader_object_a163b74121b340ce614062ab54cf53c90}{getVertexFile} () const 
\begin{DoxyCompactList}\small\item\em returns the filename of the vertex shader file \end{DoxyCompactList}\item 
std::string \hyperlink{class_shader_object_a886d52c71cee0b1aaa4fe7551409de31}{getFragementFile} () const 
\begin{DoxyCompactList}\small\item\em returns the filename of the fragment shader file \end{DoxyCompactList}\item 
std::vector$<$ std::string $>$ \hyperlink{class_shader_object_aff5569a7ee158ea3afcec2797e213653}{getAttributes} () const 
\begin{DoxyCompactList}\small\item\em returns the list of attributes for the shader \end{DoxyCompactList}\item 
std::vector$<$ int $>$ \hyperlink{class_shader_object_ade2ebc6a1744022378394c649800325a}{getAttributeValues} () const 
\begin{DoxyCompactList}\small\item\em returns the list of attributes values for the shader \end{DoxyCompactList}\item 
bool \hyperlink{class_shader_object_a1cbeaf7062de380ec88df805568b33b4}{getIsSpecial} () const 
\begin{DoxyCompactList}\small\item\em returns the toggle flag for special shader \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
std::string \hyperlink{class_shader_object_ae327963b730039ee890a2cfa8197e02f}{m\_\-shaderName}
\begin{DoxyCompactList}\small\item\em shader name \end{DoxyCompactList}\item 
std::string \hyperlink{class_shader_object_a42a53a26551d1c8070aca5441e83cede}{m\_\-vertexFile}
\begin{DoxyCompactList}\small\item\em filename of the vertex shader file \end{DoxyCompactList}\item 
std::string \hyperlink{class_shader_object_a872dcad06318065f62d7c945c8442e74}{m\_\-fragementFile}
\begin{DoxyCompactList}\small\item\em filename of the fragment shader file \end{DoxyCompactList}\item 
std::vector$<$ std::string $>$ \hyperlink{class_shader_object_a7fa3fc833ee0e6e8caa4054fb3a5f8e4}{m\_\-attributes}
\begin{DoxyCompactList}\small\item\em attributes of the shader \end{DoxyCompactList}\item 
std::vector$<$ int $>$ \hyperlink{class_shader_object_a29e2064adf8c3a828cd866ef42b2a3e6}{m\_\-attributeValues}
\begin{DoxyCompactList}\small\item\em attributes values of the shader \end{DoxyCompactList}\item 
bool \hyperlink{class_shader_object_abefc3f7c44bed05d877de625f5cdb80f}{m\_\-isSpecial}
\begin{DoxyCompactList}\small\item\em whether a shader is to be loaded in a special way \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
a base object used to store shader info from the config file 

Definition at line 18 of file ShaderObject.h.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_shader_object_a3e169d2fb55eef8b5eb7129146de24aa}{
\index{ShaderObject@{ShaderObject}!ShaderObject@{ShaderObject}}
\index{ShaderObject@{ShaderObject}!ShaderObject@{ShaderObject}}
\subsubsection[{ShaderObject}]{\setlength{\rightskip}{0pt plus 5cm}ShaderObject::ShaderObject (
\begin{DoxyParamCaption}
\item[{const std::string}]{\_\-shaderName, }
\item[{const std::string}]{\_\-vertexFile, }
\item[{const std::string}]{\_\-fragementFile, }
\item[{const std::vector$<$ std::string $>$}]{\_\-attributes, }
\item[{const std::vector$<$ int $>$}]{\_\-attributeValues, }
\item[{const bool}]{\_\-isSpecial}
\end{DoxyParamCaption}
)}}
\label{class_shader_object_a3e169d2fb55eef8b5eb7129146de24aa}


ctor 


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em \_\-shaderName} & the name of the shader \\
\hline
\mbox{\tt in}  & {\em \_\-vertexFile} & the filename of the vertex shader file \\
\hline
\mbox{\tt in}  & {\em \_\-fragementFile} & the filename of the fragment shader file \\
\hline
\mbox{\tt in}  & {\em \_\-attributes} & the attributes for the shader file \\
\hline
\mbox{\tt in}  & {\em \_\-attributeValues} & the attributes values for the shader file \\
\hline
\mbox{\tt in}  & {\em \_\-isSpecial} & toggle flag for special shader loading \\
\hline
\end{DoxyParams}


Definition at line 7 of file ShaderObject.cpp.


\begin{DoxyCode}
{
    m_shaderName = _shaderName;
    m_vertexFile = _vertexFile;
    m_fragementFile = _fragementFile;

    m_attributes = attributes;
    m_attributeValues = attributeValues;

    m_isSpecial = isSpecial;
}
\end{DoxyCode}


\subsection{Member Function Documentation}
\hypertarget{class_shader_object_aff5569a7ee158ea3afcec2797e213653}{
\index{ShaderObject@{ShaderObject}!getAttributes@{getAttributes}}
\index{getAttributes@{getAttributes}!ShaderObject@{ShaderObject}}
\subsubsection[{getAttributes}]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$std::string$>$ ShaderObject::getAttributes (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{class_shader_object_aff5569a7ee158ea3afcec2797e213653}


returns the list of attributes for the shader 



Definition at line 48 of file ShaderObject.h.



References m\_\-attributes.


\begin{DoxyCode}
{ return m_attributes; }
\end{DoxyCode}


Here is the caller graph for this function:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=398pt]{class_shader_object_aff5569a7ee158ea3afcec2797e213653_icgraph}
\end{center}
\end{figure}


\hypertarget{class_shader_object_ade2ebc6a1744022378394c649800325a}{
\index{ShaderObject@{ShaderObject}!getAttributeValues@{getAttributeValues}}
\index{getAttributeValues@{getAttributeValues}!ShaderObject@{ShaderObject}}
\subsubsection[{getAttributeValues}]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$int$>$ ShaderObject::getAttributeValues (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{class_shader_object_ade2ebc6a1744022378394c649800325a}


returns the list of attributes values for the shader 



Definition at line 51 of file ShaderObject.h.



References m\_\-attributeValues.


\begin{DoxyCode}
{ return m_attributeValues; }
\end{DoxyCode}


Here is the caller graph for this function:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{class_shader_object_ade2ebc6a1744022378394c649800325a_icgraph}
\end{center}
\end{figure}


\hypertarget{class_shader_object_a886d52c71cee0b1aaa4fe7551409de31}{
\index{ShaderObject@{ShaderObject}!getFragementFile@{getFragementFile}}
\index{getFragementFile@{getFragementFile}!ShaderObject@{ShaderObject}}
\subsubsection[{getFragementFile}]{\setlength{\rightskip}{0pt plus 5cm}std::string ShaderObject::getFragementFile (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{class_shader_object_a886d52c71cee0b1aaa4fe7551409de31}


returns the filename of the fragment shader file 



Definition at line 45 of file ShaderObject.h.



References m\_\-fragementFile.


\begin{DoxyCode}
{ return m_fragementFile; }
\end{DoxyCode}


Here is the caller graph for this function:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{class_shader_object_a886d52c71cee0b1aaa4fe7551409de31_icgraph}
\end{center}
\end{figure}


\hypertarget{class_shader_object_a1cbeaf7062de380ec88df805568b33b4}{
\index{ShaderObject@{ShaderObject}!getIsSpecial@{getIsSpecial}}
\index{getIsSpecial@{getIsSpecial}!ShaderObject@{ShaderObject}}
\subsubsection[{getIsSpecial}]{\setlength{\rightskip}{0pt plus 5cm}bool ShaderObject::getIsSpecial (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{class_shader_object_a1cbeaf7062de380ec88df805568b33b4}


returns the toggle flag for special shader 



Definition at line 54 of file ShaderObject.h.



References m\_\-isSpecial.


\begin{DoxyCode}
{ return m_isSpecial; }
\end{DoxyCode}


Here is the caller graph for this function:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=396pt]{class_shader_object_a1cbeaf7062de380ec88df805568b33b4_icgraph}
\end{center}
\end{figure}


\hypertarget{class_shader_object_a6c5334423581d4ee8f447365cffa0bc4}{
\index{ShaderObject@{ShaderObject}!getShaderName@{getShaderName}}
\index{getShaderName@{getShaderName}!ShaderObject@{ShaderObject}}
\subsubsection[{getShaderName}]{\setlength{\rightskip}{0pt plus 5cm}std::string ShaderObject::getShaderName (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{class_shader_object_a6c5334423581d4ee8f447365cffa0bc4}


returns the name of the shader 



Definition at line 39 of file ShaderObject.h.



References m\_\-shaderName.


\begin{DoxyCode}
{ return m_shaderName; }
\end{DoxyCode}


Here is the caller graph for this function:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{class_shader_object_a6c5334423581d4ee8f447365cffa0bc4_icgraph}
\end{center}
\end{figure}


\hypertarget{class_shader_object_a163b74121b340ce614062ab54cf53c90}{
\index{ShaderObject@{ShaderObject}!getVertexFile@{getVertexFile}}
\index{getVertexFile@{getVertexFile}!ShaderObject@{ShaderObject}}
\subsubsection[{getVertexFile}]{\setlength{\rightskip}{0pt plus 5cm}std::string ShaderObject::getVertexFile (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{class_shader_object_a163b74121b340ce614062ab54cf53c90}


returns the filename of the vertex shader file 



Definition at line 42 of file ShaderObject.h.



References m\_\-vertexFile.


\begin{DoxyCode}
{ return m_vertexFile; }
\end{DoxyCode}


Here is the caller graph for this function:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{class_shader_object_a163b74121b340ce614062ab54cf53c90_icgraph}
\end{center}
\end{figure}




\subsection{Member Data Documentation}
\hypertarget{class_shader_object_a7fa3fc833ee0e6e8caa4054fb3a5f8e4}{
\index{ShaderObject@{ShaderObject}!m\_\-attributes@{m\_\-attributes}}
\index{m\_\-attributes@{m\_\-attributes}!ShaderObject@{ShaderObject}}
\subsubsection[{m\_\-attributes}]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$std::string$>$ {\bf ShaderObject::m\_\-attributes}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{class_shader_object_a7fa3fc833ee0e6e8caa4054fb3a5f8e4}


attributes of the shader 



Definition at line 67 of file ShaderObject.h.

\hypertarget{class_shader_object_a29e2064adf8c3a828cd866ef42b2a3e6}{
\index{ShaderObject@{ShaderObject}!m\_\-attributeValues@{m\_\-attributeValues}}
\index{m\_\-attributeValues@{m\_\-attributeValues}!ShaderObject@{ShaderObject}}
\subsubsection[{m\_\-attributeValues}]{\setlength{\rightskip}{0pt plus 5cm}std::vector$<$int$>$ {\bf ShaderObject::m\_\-attributeValues}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{class_shader_object_a29e2064adf8c3a828cd866ef42b2a3e6}


attributes values of the shader 



Definition at line 70 of file ShaderObject.h.

\hypertarget{class_shader_object_a872dcad06318065f62d7c945c8442e74}{
\index{ShaderObject@{ShaderObject}!m\_\-fragementFile@{m\_\-fragementFile}}
\index{m\_\-fragementFile@{m\_\-fragementFile}!ShaderObject@{ShaderObject}}
\subsubsection[{m\_\-fragementFile}]{\setlength{\rightskip}{0pt plus 5cm}std::string {\bf ShaderObject::m\_\-fragementFile}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{class_shader_object_a872dcad06318065f62d7c945c8442e74}


filename of the fragment shader file 



Definition at line 64 of file ShaderObject.h.

\hypertarget{class_shader_object_abefc3f7c44bed05d877de625f5cdb80f}{
\index{ShaderObject@{ShaderObject}!m\_\-isSpecial@{m\_\-isSpecial}}
\index{m\_\-isSpecial@{m\_\-isSpecial}!ShaderObject@{ShaderObject}}
\subsubsection[{m\_\-isSpecial}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf ShaderObject::m\_\-isSpecial}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{class_shader_object_abefc3f7c44bed05d877de625f5cdb80f}


whether a shader is to be loaded in a special way 



Definition at line 73 of file ShaderObject.h.

\hypertarget{class_shader_object_ae327963b730039ee890a2cfa8197e02f}{
\index{ShaderObject@{ShaderObject}!m\_\-shaderName@{m\_\-shaderName}}
\index{m\_\-shaderName@{m\_\-shaderName}!ShaderObject@{ShaderObject}}
\subsubsection[{m\_\-shaderName}]{\setlength{\rightskip}{0pt plus 5cm}std::string {\bf ShaderObject::m\_\-shaderName}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{class_shader_object_ae327963b730039ee890a2cfa8197e02f}


shader name 



Definition at line 58 of file ShaderObject.h.

\hypertarget{class_shader_object_a42a53a26551d1c8070aca5441e83cede}{
\index{ShaderObject@{ShaderObject}!m\_\-vertexFile@{m\_\-vertexFile}}
\index{m\_\-vertexFile@{m\_\-vertexFile}!ShaderObject@{ShaderObject}}
\subsubsection[{m\_\-vertexFile}]{\setlength{\rightskip}{0pt plus 5cm}std::string {\bf ShaderObject::m\_\-vertexFile}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{class_shader_object_a42a53a26551d1c8070aca5441e83cede}


filename of the vertex shader file 



Definition at line 61 of file ShaderObject.h.



The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
include/\hyperlink{_shader_object_8h}{ShaderObject.h}\item 
src/\hyperlink{_shader_object_8cpp}{ShaderObject.cpp}\end{DoxyCompactItemize}
